1. Technical Field
This invention relates generally to network computing systems, and in particular to remotely managed client computers. Still more particularly, the present invention relates to a method and system for determining if a client computer, which is operating on battery power, has enough remaining battery power to execute a maintenance application ordered by a remote managing computer.
2. Description of the Related Art
While early computers were “stand alone” and unable to communicate with other computers, most computers today are able to communicate with other computers for a variety of purposes, including sharing data, e-mailing, downloading programs, coordinating operations, etc. Each computer typically connects to a network via a Network Interface Card (NIC) or an integrated Local Area Network (LAN) on Motherboard (LOM). The network couples multiple computers and/or peripheral devices (such as printers, secondary storage, etc.) The network may be a Local Area Network (LAN) or a Wide Area Network (WAN).
A LAN is a small local network, wired or wireless, that is typically used by a single enterprise. Such LANs, using architectures such, as an Ethernet, Token Ring, ARCnet or a wireless protocol such as 802.11a/b/g, are used to connect computers and peripheral devices within a limited area, such as a single campus or building.
Computers are not limited to the confines of a LAN. Rather, a computer can be connected to another computer or peripheral device via a Wide Area Network (WAN), such as the Internet, to provide a communications link over a larger area. Each computer can be directly connected to a WAN via a Network Interface Card (NIC) or LOM, or the computer can be indirectly connected to the WAN via the LAN. The WAN can be wired or wireless, similar to that described for the LAN.
A typical prior art system for interconnecting computers and computer networks is shown in FIG. 1. A local client computer 102 is interconnected to a number of other computers and networks as shown. Although illustrated as a desktop computer, local client computer 102 may be a wireless mobile computing device, such as a laptop computer, a Personal Digital Assistant (PDA), a cell phone, etc. Local client computer 102 is connected to other computers on a LAN 104a, on which other client computers 106 and local servers 108 are connected. Although connected to other computers on LAN 104a, local client computer 102 can be self-controlled, communicating with other computers only to share data. Alternatively, local client computer 102 may be under the management and/or control of a managing server 120.
Local client computer 102 can communicate with computers outside of LAN 104a. As depicted in FIG. 1, such communications are typically via a Wide Area Network (WAN) 110, which includes multiple routers 112. As depicted in an exemplary manner, a router 112a routs messages to and from computers on LAN 104a, while also communicating with other routers 112 that control communications with other computers or networks. For example, router 112a communicates with a router 112b, which directs traffic to another LAN 104b. Attached to LAN 104b are additional resources, such as peripheral devices (not shown), a remote computer 114a, a remote server 116a and a managing server 120b. Remote computer 114a may be another client computer for sharing data with client computer 102, while managing server 120b may be a server that controls/manages local client computer 102.
Router 112c connects router 112a and/or router 112b with an Internet 118, which is a public wide area network that is accessible worldwide. Internet 118 utilizes existing public telecommunications networks in conjunction with service provider routers that direct messages between computers, using a Transmission Control Protocol/Internet Protocol (TCP/IP). Connected to Internet 118 are various resources, including peripheral devices (not shown) as well as remote client computers 114b, remote servers 116b, and managing server 120c, which serve similar functions as remote client computers 114a, remote servers 116a, and managing server 120b. 
A managing server, such as managing server 120a, 120b or 120c, may be the same as a local server 108 or a remote server 116. Managing server 120 is used to maintain local client computer 102. Such maintenance may include running diagnostic programs, upgrading software in whole (new program) or part (upgrades or patches), monitoring activity levels, testing and operating security features, including virus filters, etc. Managing server 120 can also remotely turn local client computer 102 off and on.
If local client computer 102 has unlimited power (is plugged into a wall socket), then power usage requirements are of little concern. However, many computers are often, if not always, only on battery power. For example, a laptop, notebook or tablet computer is designed to normally run on battery power, as are Personal Digital Assistance (PDA) devices. In addition, other computers that are designed to normally be plugged into a wall socket, including mission critical computers and servers, may be on emergency battery back-up power, such as an uninterruptible power supply (UPS), when contacted by a managing server 120.
If a computer, whether that be local client computer 120 or any other client computer or server, operating on battery power executes a maintenance operation ordered by a management server 120 without having enough battery life left to complete the maintenance operation, then serious problems can arise. Execution of the maintenance operation often causes interim changes to primary and secondary memory, operating system image and files, registers, settings of peripheral devices, and other conditions and flags which, if the maintenance operations is not fully completed, can cause serious operational limitations or failure of the computer.
Therefore, there is a need for an improved method and system for performing a maintenance operation or executing another remotely ordered operation on a computer that is on battery power, where there is an assurance that the computer has enough battery power left to complete the operation.